Source documentation/pt-br

Visão geral

O código-fonte do FreeCAD é comentado para permitir a geração automática de documentação de programação usando o Doxygen, um popular sistema de documentação de código-fonte. O Doxygen pode documentar as partes C++ e Python do FreeCAD, resultando em páginas HTML com hiperlinks para cada função e classe documentada.

A documentação está hospedada on-line no site da API FreeCAD. Por favor, note que esta documentação pode nem sempre estar atualizada; se você precisar de mais detalhes, baixe o código fonte mais recente do FreeCAD e compile a documentação você mesmo. Se você tiver perguntas urgentes sobre o código, por favor, pergunte na seção de desenvolvedores do fórum FreeCAD.

A compilação da documentação da API segue os mesmos passos gerais que a compilação do executável FreeCAD, conforme indicado na página Compilar no Linux.

Fluxo de trabalho geral para compilar a documentação de programação do FreeCAD. Os pacotes Doxygen e Graphviz devem estar no sistema, assim como o próprio código-fonte do FreeCAD. O CMake configura o sistema para que, com uma única instrução make, a documentação de todo o projeto seja compilada em muitos arquivos HTML com diagramas.

Compilar documentação de origem

Documentação completa

Se você tiver o Doxygen instalado, é muito fácil construir a documentação. Também instale o Graphviz para ser capaz de produzir diagramas mostrando as relações entre diferentes classes e bibliotecas no código FreeCAD. O Graphviz também é usado pelo gráfico de dependência do FreeCAD para mostrar as relações entre diferentes objetos.

sudo apt install doxygen graphviz

Em seguida, siga os mesmos passos que você faria para compilar o FreeCAD, conforme descrito na página de compilação no Linux, e resumido aqui por conveniência.

git clone https://github.com/FreeCAD/FreeCAD.git freecad-source
mkdir freecad-build
cd freecad-build
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ../freecad-source

Enquanto você estiver dentro do diretório de compilação, emita a instrução a seguir para criar somente a documentação.

make -j$(nproc --ignore=2) DevDoc

Como mencionado na compilação (Acelerada), a opção -j define o número de núcleos de CPU usados para compilação. Os arquivos de documentação resultantes aparecerão no diretório

freecad-build/doc/SourceDocu/html/

O ponto de entrada para a documentação é o arquivo index.html, que você pode abrir com um navegador da web:

xdg-open freecad-build/doc/SourceDocu/html/index.html

O alvo DevDoc irá gerar uma quantidade significativa de dados, cerca de 5 GB de novos arquivos, particularmente devido aos diagramas criados pelo Graphviz.

Documentação reduzida

A documentação completa usa cerca de 3Gb de espaço em disco. Uma versão alternativa e menor da documentação, que leva apenas cerca de 600 MB, pode ser gerada com um destino diferente. Esta é a versão exibida no site da API FreeCAD.

make -j$(nproc --ignore=2) WebDoc

A documentação no site da API FreeCAD é produzida automaticamente a partir do https://github.com/FreeCAD/SourceDoc . Qualquer pessoa pode reconstruí-lo e enviar uma solicitação pull:

git clone https://github.com/FreeCAD/FreeCAD
cd FreeCAD
mkdir build
cd build
mkdir -p doc/SourceDocu/html
cd doc/SourceDocu/html
git clone your-fork-url
cd ../../..
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ..
make WebDoc
cd doc/SourceDocu/html
git commit
git push

Outras versões

Documentação de desenvolvimento do FreeCAD 0.19 construída por qingfeng.xia.

Integrar documentação Coin3D

Em sistemas Unix é possível vincular a documentação de origem Coin3D com FreeCAD's. Isso permite uma navegação mais fácil e diagramas de herança completos para classes derivadas de Coin.

Se você não instalar o pacote de documentação para Coin, os links serão gerados para acessar a documentação on-line no BitBucket. Isso acontecerá se um arquivo de marca Doxygen puder ser baixado no momento da configuração com o wget.

Usando Doxygen

Consulte a página Doxygen para obter uma explicação extensa sobre como comentar o código-fonte C++ e Python para que ele possa ser processado pelo Doxygen para criar automaticamente a documentação.

Essencialmente, um bloco de comentários, começando com /** ou /// para C++, ou ## para Python, precisa aparecer antes de cada definição de classe ou função, para que seja captado pelo Doxygen. Muitos comandos especiais, que começam com \ ou @, podem ser usados para definir partes do código e formatar a saída. A sintaxe de Markdown também é entendida dentro do bloco de comentários, o que torna conveniente enfatizar certas partes da documentação.

/**
 * Returns the name of the workbench object.
 */
std::string name() const;

/**
 * Set the name to the workbench object.
 */
void setName(const std::string&);

/// remove the added TaskWatcher
void removeTaskWatcher(void);